package com.example.emailontime.control;

import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;

public class NetworkUtil {
	public static int TYPE_WIFI = 1;
    public static int TYPE_MOBILE = 2;
    public static int TYPE_NOT_CONNECTED = 0; 
   
    
    public boolean getConnectivityStatusInfo(Context context){
    	 ConnectivityManager conMgr = (ConnectivityManager) context
    	            .getSystemService(Context.CONNECTIVITY_SERVICE);
    	 NetworkInfo i = conMgr.getActiveNetworkInfo();
    	  if (i == null)
    	    return false;
    	  if (!i.isConnected())
    	    return false;
    	  if (!i.isAvailable())
    	    return false;
    	  return true;
    }
    
    
    
    //another way to output the value
   /*  public static String getConnectivityStatusString(Context context) {
        int conn = NetworkUtil.getConnectivityStatus(context);
        String status = null;
        if (conn == NetworkUtil.TYPE_WIFI) {
            status = "Wifi enabled";
        } else if (conn == NetworkUtil.TYPE_MOBILE) {
            status = "Mobile data enabled";
        } else if (conn == NetworkUtil.TYPE_NOT_CONNECTED) {
            status = "Not connected to Internet";
        }
        return status;
    }
     
    public static int getConnectivityStatus(Context context) {
        ConnectivityManager cm = (ConnectivityManager) context
                .getSystemService(Context.CONNECTIVITY_SERVICE);
        
        //retrieving the int, 1 = wifi, 2 = mobile data, 3 = not connected
        NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
        if (null != activeNetwork) {
            if(activeNetwork.getType() == ConnectivityManager.TYPE_WIFI)
                return TYPE_WIFI;
             
            if(activeNetwork.getType() == ConnectivityManager.TYPE_MOBILE)
                return TYPE_MOBILE;
        } 
        return TYPE_NOT_CONNECTED;
    }
    
    */
}
